Laufzeitsystem auf Raspberry Pi installieren und starten

Vorheriger Artikel: Raspberry Pi konfigurieren


Lizenz anfordern (inkl. Seriennummer des Raspberry Pis feststellen)

Ohne aktivierte Lizenz können Sie das Laufzeitsystem nur als Demo-Version betreiben – für 3 Stunden als Vollversion nach dem Start des Laufzeitsystems. Für den längeren Betrieb ist es daher ratsam, eine Lizenz anzufordern und zu installieren.

  1. Wieder im Terminal-Fenster von PuTTY: Stellen Sie die Seriennummer Ihres Raspberry Pis fest.

    cat /proc/cpuinfo

    Ergebnis: Die Seriennummer wird in der Ausgabe neben Serial angezeigt. Am besten Sie markieren die Seriennummer inkl. aller führenden 0 in dieser Anzeige (dadurch wird die Seriennummer in die Zwischenablage kopiert).
    Beispiel für eine Seriennummer: 000000003ff12a33

  2. Erstellen Sie eine E-Mail an license@logicals.com.

  3. Vervollständigen Sie die Mail mit den folgenden Daten und versenden Sie die Mail.
    (Am besten fügen Sie die kopierte Seriennummer aus der Zwischenablage in die E-Mail ein.)

    Name:
    Name of company:
    Address:
    Serial number of the Raspberry Pis:
    Target platform: Raspbian/ARM11
    Features: (Add a "x" for each requested feature.)
      [x] RTS
      [ ] MODBUS 

    Siehe FAQ-Artikel "Welche Features sind für das Laufzeitsystem verfügbar", falls Sie Informationen zu den Features benötigen

Sie werden eine Lizenzdatei logirts.lic von Neuron erhalten. Diese Lizenzdatei ist nur für Ihren Raspberry Pi gültig.

logi.RTS auf Raspberry Pi installieren

Zu installierende Version für Laufzeitsysteme

Installieren Sie die Version von Neuron RTS max, die im heruntergeladenen Paket enthalten ist. Siehe "Release-Notes für aktuelle Version" für Informationen, welche Version von Neuron RTS max für die aktuelle Version von Neuron Power Engineer gültig ist.
Beachten Sie jedoch: Mit Neuron RTS max-Versionen vor 2.3.602 kann eine lizenzierte Neuron RTS max-Version auf dem Raspberry Pi unvorhergesehen beendet werden.

  1. Wieder im Terminal-Fenster von PuTTY: Erstellen Sie das Verzeichnis /opt/RTS auf dem Raspberry Pi und wechseln Sie in dieses Verzeichnis.

    mkdir –p /opt/RTS
    cd /opt/RTS
  2. Übertragen Sie die Datei logiRTS_Vx.y.z_Raspbian.tar.gz auf dem Raspberry Pi. Die tar.gz-Datei ist im Lieferumfang von Neuron Power Engineer enthalten. x.y.z steht für die entsprechende Versionsnummer.

    1. Öffnen Sie eine Eingabeaufforderung Ihres Betriebssystems.

    2. Wechseln Sie in das Verzeichnis, in dem sich PSCP (die Datei pscp.exe) befindet.

    3. Kopieren Sie die Datei logiRTS_Vx.y.z_Raspbian.tar.gz in dieses Verzeichnis

    4. Geben Sie in der Eingabeaufforderung den folgenden Befehl ein:

      pscp logiRTS_Vx.y.z_Raspbian.tar.gz <USER>@IP_ADDRESS:/home/USER/logiRTS_Vx.y.z_Raspbian.tar.gz

      Beispiel bei IP-Adresse 192.168.1.225 eines Raspberry Pi und Neuron RTS max Version 2.3.602 und dem Benutzer TTe:

       pscp logiRTS_V2.3.602_Raspbian.tar.gz TTe@192.168.1.22:/home/TTe/logiRTS_V2.3.602_Raspbian.tar.gz
    5. Geben Sie das Passwort für den Anwender ein.

    6. Geben Sie in der Eingabeaufforderung den folgenden Befehl ein (ersetzen Sie die relevanten Daten entsprechend):

      mv /home/USER/logiRTS_Vx.y.z_Raspbian.tar.gz /opt/RTS/
  3. Wieder im Terminal-Fenster von PuTTY: Kontrollieren Sie, ob die Datei übertragen wurde.

    ls -lah

    Die Datei logiRTS_Vx.y.z_Raspbian.tar.gz muss angeführt werden.

  4. Entpacken Sie die Datei. Ersetzen Sie x.y.z durch die entsprechende Versionsnummer.

    tar --no-same-owner -xzf logiRTS_Vx.y.z_Raspbian.tar.gz 
  5. Kontrollieren Sie, ob die Datei entpackt wurden.

    ls -lah

    Die Unterordner von Neuron RTS max müssen angeführt werden (z.B. Unterordner bin).

  6. Löschen Sie die Datei llogiRTS_Vx.y.z_Raspbian.tar.gz auf dem Raspberry Pi. Ersetzen Sie auch hier x.y.z wieder durch die entsprechende Versionsnummer.

    rm logiRTS_Vx.y.z_Raspbian.tar.gz

Lizenz installieren

Installieren Sie die Lizenz für Neuron RTS max nur, falls Sie Neuron RTS max bereits auf dem Raspberry Pi installiert haben.

  1. Kopieren Sie die Lizenzdatei logirts.lic in das Verzeichnis, in dem sich PSCP (die Datei pscp.exe) befindet.

  2. Geben Sie in der noch geöffneten Eingabeaufforderung den folgenden Befehl ein:

    pscp logirts.lic <USER>@IP_ADDRESS:/home/<USER>/logirts.lic

    Beispiel bei IP-Adresse 192.168.1.225 eines Raspberry Pi und dem Benutzer TTe:

    pscp logirts.lic TTe@192.168.1.225:/home/TTe/logirts.lic
  3. Geben Sie das Passwort für den Anwender ein.

  4. Geben Sie in der Eingabeaufforderung den folgenden Befehl ein (ersetzen Sie die relevanten Daten entsprechend):

    mv /home/USER/logirts.lic /opt/RTS/

Natürlich ist es möglich, die Lizenz zu einem späteren Zeitpunkt zu installieren: Übertragen Sie die Lizenzdatei  logirts.lic einfach in das Verzeichnis opt/RTS auf dem Raspberry Pi. Bis dahin wird Neuron RTS max als Demo-Version betrieben.

Neuron RTS max konfigurieren: Traces in Sicht "SPS Logging" und im Syslog

Nur erforderlich, falls Sie Neuron RTS max-Traces ohne Verbindung zum Raspberry Pi in der Sicht SPS Logging von Neuron Power Engineer anzeigen wollen:

  1. Definieren Sie die Umgebungsvariable RTS_LOG_UDP.
    Sie können Umgebungsvariablen mit Hilfe des Befehls export z.B. im Terminal-Fenster von PuTTY definieren. Im Zweifelsfall bitten Sie Ihren Administrator um Unterstützung.
    Beispiel für das Definieren der Umgebungsvariable:

    export RTS_LOG_UDP=192.168.1.239:7777
  2. Als Wert definieren Sie zuerst die IP-Adresse des Rechners, auf dem Neuron Power Engineer verwendet wird, dann : und abschließend den Port 7777. Der Wert für einen Rechner mit der IP-Adresse 192.168.1.239 ist also: 192.168.1.239:7777
    Falls Ihnen die IP-Adresse nicht bekannt ist, bitten Sie Ihren Administrator um diese Information.

Nur erforderlich, falls Sie Neuron RTS max nicht über systemd starten, aber trotzdem Neuron RTS max-Traces im →Syslog des Raspberry Pis anzeigen wollen:

Definieren Sie die Umgebungsvariable RTS_LOG_SYSLOG.
Sie können Umgebungsvariablen mit Hilfe des Befehls export z.B. im Terminal-Fenster von PuTTY definieren. Im Zweifelsfall bitten Sie Ihren Administrator um Unterstützung.
Beispiel für das Definieren der Umgebungsvariable:

export RTS_LOG_SYSLOG=1

(Info) Auswirkungen:

  • Die folgenden Ausgaben werden gemäß der System-Logging-Konfiguration des Zielsystems abgelegt:

    • Logmeldungen des Laufzeitsystems

    • Logmeldungen des Trace-Bausteins in SPS-Programmen

    • alle Logmeldungen der →Vendor-Bausteine über die Verwendung des RT_TRACE()-Makros bzw. der rt_trace()-Funktionen

  • Standardmäßig werden Traces des Laufzeitsystems in einer Datei im Verzeichnis /var/log des Zielsystems abgelegt, dies sind normalerweise: Üblicherweise ist diese Datei:

    • /var/log/messages bei Systemen, die SysV-Init und den "syslog" Service verwenden (meist ältere Systeme)

    • /var/log/syslog bei Systemen, die den "SystemD"-Service verwenden (aktuelle Linux-Distributionen wie z.B. Ubuntu 18)

  • Um den Speicherort zu ändern, passen Sie die Konfiguration in den Systemdateien an (/etc/syslog.conf, /etc/syslog.d/, /etc/rsyslog.conf/, /etc/rsyslog.d/). Weitere Informationen dazu finden Sie als englische Beschreibung unter:

  • (Warnung) Die Protokollierung der Traces des Laufzeitsystems im Syslog beeinflusst das Verhalten des Laufzeitsystems.

  • (Warnung) Auf SystemD-basierenden Systemen ohne installierten Syslog-Service können die Ausgaben unter Umständen nur mit journactl angezeigt werden. Der Grund dafür ist, dass die oben genannten Dateien nicht erstellt werden.

Hinweise:

  • Wird das Laufzeitsystem als SystemD-Service gestartet, ist ein Aktivieren des Loggings über den Syslog-Mechanismus nicht notwendig. Die Ausgaben werden automatisch in den SystemD-Journalen gespeichert. Sie können mit Hilfe des systemeigenen Logging-Viewer angezeigt werden (z.B. mit journalctl --unit=logirts).

logi.RTS auf Raspberry Pi starten

  1. Wieder im Terminal-Fenster von PuTTY: Wechseln Sie in das Verzeichnis opt/RTS/bin des Raspberry Pi.

    cd /opt/RTS/bin/
  2. Starten Sie Neuron RTS max auf dem Raspberry Pi. Drücken Sie die Eingabe-Taste nach jedem der Befehle, bis die Eingabemaske des Terminal-Fensters wieder sichtbar ist.

    ./startPLC &

Neuron RTS max beim Systemstart starten

Fügen Sie Neuron RTS max dem Systemstart mit Hilfe von systemd oder einer Init-Script-Datei hinzu. Dadurch läuft Neuron RTS max nach jedem Neustart des Raspberry Pi.

Systemstart mit Hilfe von systemd

Start mit "systemd"

Falls Sie systemd für den Start von Neuron RTS max verwenden wollen und Sie Details zur Vorgehensweise benötigen, kontaktieren Sie bitte das Support-Team von Neuron für weitere Informationen.
Siehe https://freedesktop.org/wiki/Software/systemd/ für Informationen zu systemd.

Service-Datei erstellen

  1. Erstellen Sie eine leere Service-Datei für Neuron RTS max.

    nano /lib/systemd/system/logirts.service
  2. Kopieren Sie folgende Zeilen in diese Datei (achten Sie darauf, dass keine Leerzeilen irrtümlich am Anfang der Datei eingefügt werden):

    [Unit]
    Description=RTS
    # uncomment the following line if your system needs a codemeter stick for the licence
    #Requires=codemeter.service
    After=multi-user.target
     
    [Service]
    Type=simple
    WorkingDirectory=/opt/RTS
     
    Environment="LD_LIBRARY_PATH=/opt/RTS/lib"
    # enter the ip address of your development system in the next line, if you want to see RTS traces in the development environment
    Environment=RTS_LOG_UDP=127.0.0.1:7777
    ExecStart=/opt/RTS/bin/RTSLoader -b /opt/RTS/PLC
    Restart=on-failure
    RestartSec=1
     
    [Install]
    WantedBy=multi-user.target
  3. Speichern Sie die Änderungen und verlassen Sie den Editor: Drücken Sie Strg+O (und bestätigen Sie den Dateinamen), dann drücken Sie Strg+X.

Neue Services aktivieren

systemctl daemon-reload
systemctl enable logirts.service

Alternativer Systemstart mit Hilfe von Init-Script-Datei

Init-Script-Datei erstellen

  1. Erstellen Sie eine leere Init-Script-Datei für Neuron RTS max.

    nano /etc/init.d/startPLC
  2. Kopieren Sie folgende Zeilen in diese Datei (achten Sie darauf, dass keine Leerzeilen irrtümlich am Anfang der Datei eingefügt werden):

    #!/bin/sh
    ### BEGIN INIT INFO
    # Provides: RTSLoader
    # Required-Start:
    # Required-Stop:
    # Default-Start: 5
    # Default-Stop: 0 1 2 3 4 6
    # Short-Description: Starts the runtime system
    # Description:
    ### END INIT INFO
     
    case "$1" in
    start)
    cd /opt/RTS/bin
    ./startPLC &
    echo "Starting the runtime system"
    ;;
    stop)
    sudo pkill RTSLoader
    echo "Runtime system stopped"
    ;;
    *)
    echo "Usage: /etc/init.d/startPLC {start|stop}"
    exit 1
    ;;
    esac
    exit 0
  3. Speichern Sie die Änderungen und verlassen Sie den Editor: Drücken Sie Strg+O (und bestätigen Sie den Dateinamen), dann drücken Sie Strg+X.

  4. Ändern Sie die Rechte für die Datei.

    chmod +x /etc/init.d/startPLC
  5. Konvertieren Sie die Datei auf Unix (damit evtl. problematische Windows-Zeichen entfernt werden).

    dos2unix /etc/init.d/startPLC

Init-Script-Datei dem Systemstart hinzufügen

update-rc.d startPLC defaults

Raspberry Pi erneut starten und als Anwender "root" anmelden

  1. Starten Sie den Raspberry Pi erneut, um alle bisherigen Änderungen zu übernehmen

    shutdown now -r
  2. Bestätigen Sie angezeigte Meldungen.

  3. Warten Sie ca. 1 Minute. Verbinden Sie sich anschließend  in PuTTY erneut zum Raspberry Pi: Öffnen Sie das Systemmenü von PuTTY (indem Sie auf das Systemsymbol in der Titelleiste klicken) und wählen Sie den Befehl Restart Session.

  4. Melden Sie sich als Anwender root mit dem Passwort an.

    login as: root
    root@192.168.1.225's password: _password for root_

    Der Text für das Passwort wird im Terminal-Fenster nicht angezeigt.

  5. Kontrollieren Sie, ob Neuron RTS max gestartet ist.

    ps aux | grep RTS

    In den angeführten Prozessen muss RTSLoader angezeigt werden.

PuTTY beenden, Eingabeaufforderung schließen

Da für die Kurzanleitung keine weiteren Arbeiten direkt am Raspberry Pi erforderlich sind, beenden Sie PuTTY und schließen Sie die Eingabeaufforderung (doppelklicken Sie auf das Systemsymbol in der Titelleiste).

 


Fortsetzen mit: Anwendung auf Raspberry Pi laden